#region Header Licence
//  NKnobMan, Copyright 2009, Alexandre MUTEL.
// 
//  This is free software; you can redistribute it and/or modify it
//  under the terms of the GNU Lesser General Public License as
//  published by the Free Software Foundation; either version 2.1 of
//  the License, or (at your option) any later version.
// 
//  This software is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
//  Lesser General Public License for more details.
// 
//  You should have received a copy of the GNU Lesser General Public
//  License along with this software; if not, write to the Free
//  Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
//  02110-1301 USA, or see the FSF site: http://www.fsf.org.
#endregion
using System.Runtime.Serialization;

namespace NKnobMan
{
    [DataContract]
    public abstract class Light : LayerItem
    {
        public Light(Layer layer) : base(layer)
        {
            //Direction = new IntAnimateLayerItem(layer, genericNameDirection, genericNameDirection + "1", genericNameDirection + "2", "", "");
            //Density = new IntAnimateLayerItem(layer, genericNameDensity, genericNameDensity, genericNameDensity + "2", "", "");
        }

        //[DataMember]
        //public bool EnableDirection
        //{
        //    get { return Layer.GetValue<bool>(Direction.FromName.Substring(0, Direction.FromName.Length -1) + "Enable"); }
        //    set { Layer.SetValue(Direction.FromName.Substring(0, Direction.FromName.Length - 1) + "Enable", value); }
        //}

        [DataMember]
        public abstract IntAnimateLayerItem Direction { get; internal set; }
        
        [DataMember]
        public abstract IntAnimateLayerItem Density { get; internal set; }
    }
}